// components/my-cpn/my-cpn.js
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    propsText: {
      type: String,
      value: "默认值",
      observer: function(newVal,oldVal) {
        console.log(newVal, oldVal);
      }
    }
  },

  /**
   * 组件的初始数据
   */
  data: {
    cpntext:"my-cpn自定义组件",
    cpnNum:0
  },
  observers: {
    cpntext: function(newVal) {
      console.log("传进来的是改变后的值"+newVal)
    },
    cpnNum: function (newVal) {
      console.log("传进来的是改变后的值" + newVal)
    }
  },
  // 监听组件所在页面的声明周期使用的一些方法
  pageLifetimes: {
    show() {
      console.log("监听组件所在页面显示出来时")
    },
    hide() {
      console.log("监听组件所在页面隐藏时")
    },
    resize() {
      console.log("监听组件所在页面改变尺寸时")
    }
  },
  // 监听组件本身声明周期使用的一些方法
  lifetimes: {
    // 生命周期函数，可以为函数，或一个在methods段中定义的方法名
    created: function() {
      console.log("组件被创建出来时调用")
    },
    attached: function () { 
      console.log("组件被添加到页面时调用")
    },
    moved: function () { 
      console.log("组件被移动到另外一个节点时调用")
    },
    detached: function () {
      console.log("组件被移除时调用")
     },
  },
  externalClasses: [
    // 可传入更多的样式，只需要在此时定义
    "pageClass"
  ],

  /**
   * 组件的方法列表
   */
  methods: {
    mycpnIncrement: function() {
      this.triggerEvent("increment")
    }
  }
})
